home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Gigarom 1
/
Gigarom Macintosh Archives (Quantum Leap)(CDRM1080320)(1993).iso
/
FILES
/
HYP
/
A-B
/
AutoCat.cpt
/
AutoCat
/
stack.txt
< prev
Wrap
Text File
|
1989-02-26
|
7KB
|
233 lines
-- stack: in
-- format: 8 (HyperCard 1)
-- flags: 0x0 (none)
-- protect password hash: 0
-- maximum user level: 5 (scripting)
-- window: Rect(x1=0, y1=0, x2=0, y2=0)
-- screen: Rect(x1=0, y1=0, x2=0, y2=0)
-- card dimensions: w=0 h=0
-- scroll: x=0 y=0
-- background count: 5
-- first background id: 2726
-- card count: 15
-- first card id: 6151
-- list block id: 7244
-- print block id: 4793
-- font table block id: 0
-- style table block id: 0
-- free block count: 3
-- free size: 3744 bytes
-- total size: 78848 bytes
-- stack block size: 6144 bytes
-- created by hypercard version: 0x00000000
-- compacted by hypercard version: 0x00000000
-- modified by hypercard version: 0x00000000
-- opened by hypercard version: 0x01208000
-- patterns[0]: 0x0000000000000000
-- patterns[1]: 0x8000000008000000
-- patterns[2]: 0x8800220088002200
-- patterns[3]: 0x8888222288882222
-- patterns[4]: 0x88AA22AA88AA22AA
-- patterns[5]: 0xCCAA33AACCAA33AA
-- patterns[6]: 0xEEAABBAAEEAABBAA
-- patterns[7]: 0xEEBBBBEEEEBBBBEE
-- patterns[8]: 0xFFBBFFEEFFBBFFEE
-- patterns[9]: 0xFFBBFFFFFFBBFFFF
-- patterns[10]: 0x8010022001084004
-- patterns[11]: 0xFFFFFFFFFFFFFFFF
-- patterns[12]: 0x8822882288228822
-- patterns[13]: 0x1122448811224488
-- patterns[14]: 0xC4800C6843023026
-- patterns[15]: 0xB130031BD8C00C8D
-- patterns[16]: 0xAA00AA00AA00AA00
-- patterns[17]: 0x8822552288225522
-- patterns[18]: 0x8855225588552255
-- patterns[19]: 0x77DD77DD77DD77DD
-- patterns[20]: 0x8000000000000000
-- patterns[21]: 0xAA55AA55AA55AA55
-- patterns[22]: 0x038448300C020101
-- patterns[23]: 0x8244394482010101
-- patterns[24]: 0x8814224188412214
-- patterns[25]: 0x8080413E080814E3
-- patterns[26]: 0x22048C7422179810
-- patterns[27]: 0xBE808808EB088880
-- patterns[28]: 0x25C8328964244C92
-- patterns[29]: 0xA29C41BE2AC914EB
-- patterns[30]: 0x40A00000040A0000
-- patterns[31]: 0x8040200002040800
-- patterns[32]: 0xAA00800088008000
-- patterns[33]: 0xFF80808080808080
-- patterns[34]: 0x081C22C180010204
-- patterns[35]: 0xFF808080FF080808
-- patterns[36]: 0xF87422478F172271
-- patterns[37]: 0xBF00BFBFB0B0B0B0
-- patterns[38]: 0xFF7FBE5DA2418000
-- patterns[39]: 0xFAF5FAF5A050A050
-- checksum: 0x0
----- HyperTalk script -----
-- init stack
on openStack
initAll
end openStack
on resume
initAll
pass resume
end resume
on startUp
initAll
pass startUp
end startUp
on initAll
push recent card
-- flag whether New Card commands are from user or from XCMD
global fromXCMD, volumeXCMD,hardDisk,applPath
-- init Find string and buttons
global sourceString
put empty into sourceString
global selectedText, whichButton,whichFindButton
-- the ShowPath XFCN will return an Application's pathname
--in this global if the "Record" button is clicked
put empty into applPath
put false into fromXCMD -- New Card command is from user
put false into hardDisk -- Floppies being cataloged
-- field remembers Find dialog box settings between stack uses
get line 2 of card field "Hold Globals" of card "AutoCat Index"
if it is not empty then
put line 1 of card field "Hold Globals" of card "AutoCat Index" into selectedText
put line 2 of card field "Hold Globals" of card "AutoCat Index" into whichButton
put line 3 of card field "Hold Globals" of card "AutoCat Index" into whichFindButton
else
-- if it doesn't remember, set defaults
put empty into selectedText
put 1 into whichButton
put 1 into whichFindButton
end if
end initAll
on closeStack
-- record find dialog box's most recent settings
global selectedText, whichButton,whichFindButton
put selectedText into line 1 of card field "Hold Globals" of card "AutoCat Index"
put whichButton into line 2 of card field "Hold Globals" of card "AutoCat Index"
put whichFindButton into line 3 of card field "Hold Globals" of card "AutoCat Index"
-- Auto Compact stack if necessary
if the freeSize of this stack >= 15000 then
answer "The AutoCat Stack has " & round(the freeSize of this stack/1024) & "k free, Compact?" with "NO" or "OK"
if it is "OK" then doMenu "compact stack"
end if
end closeStack
--find field line clicked on in a scrlloing field
Function lineClicked
return (trunc(((scroll of the target) + (item two of the clickloc) - (item two of the rect of the target)) div the textheight of the target) + one)
end lineClicked
on returnKey
global sourceString -- last find string
if sourceString is not empty then -- continue search
set cursor to 4
searchAC 0
else
pass returnKey
end if
end returnKey
on searchAC flag
-- which field to search, what mode to use, e.g., chars, word...
-- these globals are maintained by the SearchAutoCat XFCN
global whichButton,whichFindButton
-- the source
global sourceString
-- a simple XFCN which puts up a dialog box looking for the search
-- string and the options
if flag >0 then
put SearchAutoCat () into sourceString
end if
if sourceString is empty then exit searchAC
-- the XFCN returns 1,2, or 3 for which find mode button was set
if whichButton contains 1 then -- search all fields
if whichFindButton contains 1 then -- look at beginnings of words
find sourceString
end if -- wfb 1
if whichFindButton contains 2 then -- look at words only
find word sourceString
end if -- wfb 2
if whichFindButton contains 3 then -- look at chars
find chars sourceString
end if -- wfb 3
end if -- whichButton
-- XFCN returns 1-8 depending on which field button was set
if whichButton contains 2 then
SearchFields 9, 3424
end if
if whichButton contains 3 then
SearchFields 1, 3424
end if
if whichButton contains 4 then
SearchFields 1, 2241
end if
if whichButton contains 5 then
SearchFields 2, 2241
end if
if whichButton contains 6 then
SearchFields 61, 2241
end if
if whichButton contains 7 then
SearchFields 62, 2241
end if
if whichButton contains 8 then
SearchFields 50, 2241
end if
end searchAC
on SearchFields fieldID,bkgndID
global whichButton,whichFindButton,sourceString
-- go to the proper bkgnd to begin search
if the ID of this bkgnd is not bkgndID then
go to bkgnd ID bkgndID
end if
if whichFindButton contains 1 then -- look at beginnings of words
find sourceString in bkgnd field ID fieldID
end if -- wfb 1
if whichFindButton contains 2 then -- look at words only
find word sourceString in bkgnd field ID fieldID
end if -- wfb 2
if whichFindButton contains 3 then -- look at chars
find chars sourceString in bkgnd field ID fieldID
end if -- wfb 3
send mouseWithin to bkgnd field ID fieldID
end SearchFields
on doMenu which
-- trap command-F to bring up Find dialog box
if which is "Find..." then
searchAC 1
else
pass doMenu
end if
end doMenu